<?php
/**
 * Created by PhpStorm.
 * User: zhd
 * Date: 2017/5/31
 * Time: 11:44
 */
namespace backend\base;

/**
 * 模型基类
 * @package app\base
 */
class BaseModel extends \yii\db\ActiveRecord
{
    /**
     * 验证手机号码
     */
    public static function testMobile($mobile)
    {
        $test = preg_match("/^1[34578]{1}\d{9}$/",$mobile);
        if ($test) {
            return $test;
        } else {
            return false;
        }
    }

    /**
     * 验证密码 数字英文 6-14位
     */
    public static function testPassWord($mobile)
    {
        $test = preg_match("/^[a-zA-Z0-9]{6,10}$/",$mobile);
        if ($test) {
            return $test;
        } else {
            return false;
        }
    }

    /**
     * 验证性别类型 1-3
     */
    public static function testSex($deviceId)
    {
        if($deviceId==1 || $deviceId==2 || $deviceId==3){
            return true;
        }
        return false;
    }

    /**
     * 生成不重复的随机数
     * @param  int $start  需要生成的数字开始范围
     * @param  int $end    结束范围
     * @param  int $length 需要生成的随机数个数
     * @return array       生成的随机数
     */
    public static function get_rand_number($start=100000,$end=999999,$length=6){
        $connt=0;
        $temp='';
        while($connt<$length){
            $temp.=mt_rand($start,$end);
            return $temp;
        }
    }

    /**
     * 单例初始化model
     * @param string $className
     * @return mixed
     */
    public static function getInstance($className = __CLASS__ )
    {
        if (empty(self::$_instances[$className])) {
            self::$_instances[$className] = new $className(null, null, []);
        }
        return self::$_instances[$className];
    }
}
